package com.ruoyi.cat.service;

import com.ruoyi.cat.domain.CatShareuserTable;
import com.ruoyi.cat.domain.DTO.MyHomeDTO;
import com.ruoyi.cat.domain.DTO.MyShareUserDTO;
import com.ruoyi.cat.domain.DTO.UserActivityDTO;
import com.ruoyi.cat.domain.VO.MyShareVO;

import java.util.List;

/**
 * 分享用户Service接口
 * 
 * @author ruoyi
 * @date 2024-12-24
 */
public interface ICatShareuserTableService 
{
    /**
     * 查询分享用户
     * 
     * @param id 分享用户主键
     * @return 分享用户
     */
    public CatShareuserTable selectCatShareuserTableById(Long id);

    /**
     * 查询分享用户列表
     * 
     * @param catShareuserTable 分享用户
     * @return 分享用户集合
     */
    public List<CatShareuserTable> selectCatShareuserTableList(CatShareuserTable catShareuserTable);

    /**
     * 新增分享用户
     * 
     * @param catShareuserTable 分享用户
     * @return 结果
     */
    public int insertCatShareuserTable(CatShareuserTable catShareuserTable);

    /**
     * 修改分享用户
     * 
     * @param catShareuserTable 分享用户
     * @return 结果
     */
    public int updateCatShareuserTable(CatShareuserTable catShareuserTable);

    /**
     * 批量删除分享用户
     * 
     * @param ids 需要删除的分享用户主键集合
     * @return 结果
     */
    public int deleteCatShareuserTableByIds(Long[] ids);

    /**
     * 删除分享用户信息
     * 
     * @param id 分享用户主键
     * @return 结果
     */
    public int deleteCatShareuserTableById(Long id);


    List<MyShareUserDTO> getMyShareUser(MyShareVO myShareVO);


    List<UserActivityDTO> getMyShareUserActivity(MyShareVO myShareVO);


    List<MyHomeDTO> getMyHome(MyShareVO myShareVO);


    CatShareuserTable getShareUser(CatShareuserTable catShareuserTable);

}
